!--------------------------------
! Programa dedicado a calcular e**x
! atraves da serie:
! 1 + x/1! + x**2/2! ...
!
! Resultado em linha de comando.
!
! Programa compilado e testado com:
! $ gfortran -o exec01 exec01.f90
! $ ./exec01
! 
! Forma de utilizacao auto-explicativa
! atravez de comentarios.
!
! _o_o_ oOo _o_o_ 31/08/2010

PROGRAM exec02
  IMPLICIT NONE
  INTEGER (KIND=8) :: nn
  REAL (KIND=8) :: x, ex, foo
  write(*,*) "- Programa dedicado a calcular e**x a partir da serie"
  write(*,*) "1 + x/1! + x**2/2! ..."
  write(*,*) "- Entre com a ordem da potencia (x)."
  read(*,*) x

  write(*,*) "O resultado eh:"
  nn=1
  foo=1
  ex=1
  DO WHILE (nn<=20)
    foo = foo*(x/nn)
    ex=ex+foo
    nn=nn+1
  END DO
  write(*,*) "O resultado eh:"
  write(*,*) ex
END PROGRAM
